perm filename J[NEW,LCS] blob
sn#333204 filedate 1978-02-04 generic text, type T, neo UTF8
1) MOVER.F4[NEW,LCS] and 2) PTMOVX.F4[NEW,LCS] 2-04-78 10:30 pages 1,1
**** File 1) MOVER.F4[NEW,LCS], Page 1 line 4
1) C00002 00002 SUBROUTINE MOVER
1) C00014 ENDMK
1) C⊗;
1) SUBROUTINE MOVER
1) IMPLICIT INTEGER(A-Q,S-Z)
1) DIMENSION IR(2,250)
1) REAL POS,EXTEN,PRCNT,ACCX
1) COMMON/RINP/R(2,250),NO(350),NP(250)
1) C ARRAY NO(X) USED IN 'MOVIT'. HOLDS ALL POINTS TO BE MOVED AT ANY TIME.
1) COMMON/FRMT/F78F(1),FA1(1),FA5(1),ASK/STF/RSTFAC(0/7),RSTJ2
1) COMMON/XRN/RN(1) /KJY/ KY,JY
1) COMMON R2,JA,CENTR,J2,RJQ(18),RX6,JR,L,RDIS,VY,JQ(17)
1) 1 /POSI/STFF(0/7),JJ2,POS /LIMIT/LIMIT,ITEM,LL,I,IX/PTR/PWDS(1)
1) 1 /ALF/INP(46),ACCX,ML,RRT,RZRO,RCNT,RJSZ,ROV,RSPC,KN,RA,RB,
1) 1 JLDGR,LDGR,JX,RW,RX,RY,RZ,JJ,RD,RQ,RE,RZZ,RN3,RN6,RV,RQ6
1) EQUIVALENCE (R5,RJQ(3)),(R6,RJQ(4)),(R7,RJQ(5)),(R4,RJQ(2))
1) 1,(R3,RJQ(1)),(R8,RJQ(6)),(R9,RJQ(7)),(R11,RJQ(9))
1) 1,(IR,R)
1) DATA F78F/'(78F)'/,FA1/'(A1 )'/,FA5/'(A5 )'/,RSP/.5/,RI/4.5/
1) JJ2=999
1) J2=0
1) ASK=-1
1) C 99=BACKUP
1) 6 CALL VLINE(R2,R4,R5,R6)
1) IF(R2.GE.99)RETURN
1) IF(INP(1).EQ.'J')GO TO 12
1) 167 TYPE 5
1) ACCEPT F78F,R7,R8,R9,R11
1) IF(R7.GE.99)GO TO 6
1) IF(R2.LE.7.AND.R7.GT.7)GO TO 167
1) C TRY AGAIN IF CONFUSION.
1) RDIS=0
1) REREAD FA1,L
1) C FOR LPEN TYPE 'L'. BUT 4TH # MUST APPEAR WHEN NEEDED.
1) IF(L.EQ.'B')GO TO 6
1) IF(R2.GT.7)R7=R2
1) IF(R7.NE.R2)TYPE 1200,R7
1) 1201 IF(L.NE.'L')GO TO 66
1) DO 67 K=1,2
1) R8=RY
1) CALL LPEN(R7,RY,RX)
1) 67 IF(R7.GE.99)GO TO 6
1) R9=RY
1) CC66 JJ2=1
1) 66 NST=1
1) C FOR START OF LOOP (1 UNLESS USING COPYIT)
1) IF(INP(1).NE.'C')GO TO 68
1) MOVER.F4[NEW,LCS] and 2) PTMOVX.F4[NEW,LCS] 2-04-78 10:30 pages 1,1
1) NST=ITEM+1
1) CALL COPYIT
1) 68 IF(R11.NE.0)CALL UPDN(NST)
1) JJ=0
**** File 2) PTMOVX.F4[NEW,LCS], Page 1 line 4
2) C00002 00002 C****** PTMOVE.F4 ALSO SUBR. TURN (FOR PAGE-TURN FINDING)
2) C00014 ENDMK
2) C⊗;
2) C****** PTMOVE.F4 ALSO SUBR. TURN (FOR PAGE-TURN FINDING)
2) SUBROUTINE PTMOVE(RN,PWDS)
2) IMPLICIT INTEGER(A-Q,S-Z)
2) DIMENSION R(2,400),IR(2,400),RN(1),PWDS(1)
2) COMMON/KNR/KR(400) /NNP/NP(400)
2) REAL POS,EXTEN,PRCNT,ACCX,SPFAC
2) COMMON/STF/RSTFAC(0/7),RSTJ2
2) COMMON /KJY/ KY,JY
2) COMMON R2,JA,CENTR,J2,RJQ(18),RNO,JR,LX,RDIS
2) COMMON/POSI/STFF(0/7),JJ2,POS/LLL/ITEM,LL,I,IX
2) 1 /IPG/IPG,JPG,BRACK,RSTNUM(8),RPSZ(8),RHGT(8),
2) 1 RCLEF(0/7)
2) EQUIVALENCE (R5,RJQ(3)),(R7,RJQ(5)),(R4,RJQ(2))
2) 1,(R3,RJQ(1)),(R8,RJQ(6)),(R9,RJQ(7))
2) 1,(IR,R)
2) DATA RSP/2.7/,RI/4.7/,SPFAC/2.7/
2) C RI IS SIZE FACTOR FOR SPACING. IF LARGER THEN REQUIRES MORE SPACE.
2) JJ2=-1
2) J2=0
2) C 99=BACKUP
2) IF(LL.EQ.'J')GO TO 12
2) RDIS=0
2) CCC66 NST=1
2) JJ=0
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 53
1) IF(JJ)CALL GETPTS(NST)
1) IF(R2.NE.R7)CALL STFCH
1) IF(JY.NE.0)GO TO 1
1) 7 IF(JJ2.EQ.999)JJ2=-1
1) RETURN
1) CC IF(JY.EQ.0)RETURN
1) 1 CALL MOVIT
1) RETURN
1) 12 IF(R4.EQ.0)R4=.001
1) IF(R5.EQ.0)R5=200
1) RCNT=0
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 28
1) MOVER.F4[NEW,LCS] and 2) PTMOVX.F4[NEW,LCS] 2-04-78 10:30 pages 2,2
2) IF(JJ)CALL GETPTS(LX,RN,PWDS)
2) IF(JY.EQ.0)RETURN
2) CALL MOVIT(RN)
2) RETURN
2) 12 IF(R4.EQ.0)R4=.001
2) CCC IF(R5.EQ.0)R5=200
2) RCNT=0
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 67
1) CALL GETPTS(1)
1) IF(JY.EQ.0)GO TO 7
1) C RETURN IF NO ITEMS FOUND TO DEAL WITH.
1) ROV=RRT
1) PRCNT=1.
1) R7=R2
1) R6=0
1) R11=0
1) 19 IF(RCNT.GT.9)GO TO 101
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 38
2) CALL GETPTS(LX,RN,PWDS)
2) IF(JY.EQ.0)RETURN
2) ROV=RRT
2) PRCNT=1.
2) CCC NOT USED IN PAGE R7=R2
2) 19 IF(RCNT.GT.9)GO TO 101
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 79
1) C TEMPORARY COUNTER
1) TYPE F78F,RCNT
1) DO 11 KN=0,7
1) RSPC=0
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 48
2) DO 11 KN=0,JPG-1
2) CC DO 11 KN=-3,4
2) CCC KN=R2
2) RSPC=0
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 87
1) DO 2 K=1,KY
1) L=NP(K)
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 55
2) CP RBB=-100
1) MOVER.F4[NEW,LCS] and 2) PTMOVX.F4[NEW,LCS] 2-04-78 10:30 pages 2,2
2) DO 2 K=1,KY
2) C WAS -1 ABOVE BECAUSE GETPTS GOES TOO FAR
2) L=NP(K)
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 92
1) IF(RN(L+2).EQ.R8)GO TO 77
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 62
2) CP IF(RB.LT.RBB)GO TO 280
2) CP RBB=RB
2) IF(RN(L+2).EQ.R8)GO TO 77
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 107
1) C NOT A REAL CLEF IF >4 (0=TREB, 1=BASS, 2=ALT, 3=TEN, 4=PERC.)
1) GO TO 10
1) 444 IF(RL.GT.3)GO TO 2
1) CC FOR REPEATE BAR WDCNT IS 3 -- 10/77 444 IF(RL.GT.2)GO TO 2
1) C SHOULD CHECK ON BAR LINES NO MATTER WHICH STAFF
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 79
2) C NOT A REAL CLEF IF >3
2) GO TO 10
2) 444 IF(RL.GT.3)GO TO 2
2) C FINDS REPEAT BARS. (WDCNT IS 3[+2], 5 PARAMS)
2) C SHOULD CHECK ON BAR LINES NO MATTER WHICH STAFF
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 119
1) IF(N.EQ.250)GO TO 28
1) C ONLY TREATS 250 ITEMS AT A TIME.
1) 2 CONTINUE
1) IF(N.EQ.0)GO TO 11
1) 28 DO 23 K=1,N
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 91
2) IF(N.EQ.200)GO TO 28
2) C ONLY TREATS 200 ITEMS AT A TIME.
2) 2 CONTINUE
2) 280 IF(N.EQ.0)GO TO 11
2) 28 DO 23 K=1,N
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 128
1) 24 RSTJ2=RSTFAC(KN)*PRCNT
1) CALL SORT2(R,N)
1) MOVER.F4[NEW,LCS] and 2) PTMOVX.F4[NEW,LCS] 2-04-78 10:30 pages 2,2
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 100
2) 24 RSZ=RSTFAC(KN)*PRCNT
2) CALL SORT2(R,N)
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 138
1) C RA IS NOW CODE NUM.
1) RB=0
1) RD=0
1) C RD WILL HOLD SPACE TO ADD TO PREV. ITEM, IF NEEDED.
1) RX=RN(L+5)
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 110
2) RB=0
2) RD=0
2) RX=RN(L+5)
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 147
1) IF(RA.GT.1)GO TO 4
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 117
2) RSP=SPFAC*RSTFAC(IFIX(RN(L+2)))
2) IF(RA.GT.1)GO TO 4
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 191
1) CC IF(RB.LT.2.AND.((AMOD(RZZ,10.).NE.0.AND.RE.LT.20).
1) CC 1 OR.RZZ.GE.10))RB=1.5+EXTEN(RZZ)
1) IF(RB.GE.2)GO TO 477
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 161
2) IF(RB.GE.2)GO TO 477
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 206
1) 222 IF(AMOD(RE,10.).EQ.0)GO TO 37
1) C JUMP IF NO ACCIS.
1) 425 RD=2.8*RY+EXTEN(RE)
1) CGHB USE 2.8 FOR SIZE OF ACCIS (THEY'RE REALLY 3)425 RD=2*RY+EXTEN(RE)
1) IF(RQ.GT.RD)RD=RQ
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 175
2) 222 KX=AMOD(RE,10.)
2) IF(KX.EQ.0)GO TO 37
2) CSP222 IF(AMOD(RE,10.).EQ.0)GO TO 37
2) C JUMP IF NO ACCIS.
2) 425 RD=2*RY+EXTEN(RE)
1) MOVER.F4[NEW,LCS] and 2) PTMOVX.F4[NEW,LCS] 2-04-78 10:30 pages 2,2
2) IF(KX.EQ.4)RD=RD+1.5
2) C KX=4 = bb
2) IF(RQ.GT.RD)RD=RQ
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 236
1) CC ***** WHY WAS THIS *10????? RC=AMOD(RE,1.0)*10.0+RC
1) RC=AMOD(RE,1.0)*10.0+RC
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 206
2) RC=AMOD(RE,1.0)*10.0+RC
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 243
1) GO TO 25
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 212
2) CC25 IF(JX.GT.0)R(2,JX)=R(2,JX)+RD*RSZ
2) CC GO TO 17
2) GO TO 25
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 248
1) C NOW GO BACK TO SEE IF THERE IS A NOTE IN SAME HORIZ. POS.
1) GO TO 250
1) 33 IF(RA.NE.3)GO TO 29
1) RB=3
1) IF(RN(L+4).GT.80)RB=1.5
1) C CHECK ON SIZE NEEDED FOR CLEFS. >80 = MINICLEF
1) 29 IF(RA.NE.4)GO TO 26
1) C BAR LINES
1) RB=-RJSZ/(2*RSTJ2)
1) CGHB RB=-RJSZ/2
1) RD=.9
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 219
2) GO TO 250
2) CC33 RSP=RSP*.2
2) 33 IF(K.LT.N)RE=RN(IR(2,K+1)+1)
2) C RE = NEXT CODE NUM.
2) IF(RA.NE.3)GO TO 29
2) CSP RB=3
2) RB=5
2) IF(RE.GT.2)RB=4
2) IF(RN(L+4).GT.80)RB=1.5
2) C CHECK ON SIZE NEEDED FOR CLEFS >80 = MINICLEF
2) 29 IF(RA.NE.4)GO TO 26
2) RB=-RJSZ/6
1) MOVER.F4[NEW,LCS] and 2) PTMOVX.F4[NEW,LCS] 2-04-78 10:30 pages 2,2
2) CSP RB=-RJSZ/2
2) IF(RE.GT.2)RB=RB*3
2) RD=.9
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 261
1) C METER
1) RC=0
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 238
2) RC=0
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 265
1) RB=-1
1) RD=1
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 241
2) RB=1
2) CSP RB=-1
2) RD=1
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 270
1) RB=0
1) 31 RB=RB+RC
1) GO TO 25
1) 30 IF(RA.NE.17)GO TO 17
1) C KSIG
1) RX=ABS(RX)
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 247
2) RB=1
2) CSP RB=0
2) 31 RB=RB+RC
2) GO TO 25
2) CN31 RB=2
2) CN RD=3
2) 30 IF(RA.NE.17)GO TO 17
2) RX=ABS(RX)
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 278
1) RB=2*(RX-1)-2
1) CC RB=2*(ABS(RX)-1)-2
1) C SPACES FOR CORRECT NUM OF ACCIS. RX=NUM OF ACCIS.
1) RD=2
1) MOVER.F4[NEW,LCS] and 2) PTMOVX.F4[NEW,LCS] 2-04-78 10:30 pages 2,2
1) 25 IF(JX.GT.0)R(2,JX)=R(2,JX)+RD*RSTJ2
1) 17 RC=(RB+RJSZ)*RSTJ2
1) C RJSZ=DEFAULT SIZE
1) JX=K
1) R(2,JX)=RC
1) CC??????? R(1,JX)=R(1,K)
1) 3 IF(K.LT.N)GO TO 22
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 258
2) RB=2*(RX-1)-1
2) CSP RB=2*(RX-1)-2
2) C SPACES FOR CORRECT NUM OF ACCIS. RX=NUM OF ACCIS.
2) RD=2
2) CC GO TO 25
2) 25 IF(JX.GT.0)R(2,JX)=R(2,JX)+RD*RSZ
2) 17 RC=(RB+RJSZ)*RSZ
2) C RJSZ=DEFAULT SIZE
2) JX=K
2) C ↑↑↑↑↑ TO RESET AFTER CHORD NOTES 12/75
2) R(2,JX)=RC
2) 3 IF(K.LT.N)GO TO 22
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 295
1) IF(ABS(RE-RA).GT..5)GO TO 14
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 277
2) CC IF(ABS(RE-RA).GT.1.)GO TO 14
2) IF(ABS(RE-RA).GT..5)GO TO 14
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 310
1) CALL MOVIT
1) C???? IF(R2.LE.4)GO TO 15
1) IF(R2.LE.7)GO TO 15
1) R5=R4
1) R4=RA+.001+RSPC
1) R8=R4
1) R9=R5+RD-.001
1) C FOR ITEMS ON OTHER LINES.
1) CALL MOVIT
1) 15 RSPC=RSPC+RD
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 293
2) CALL MOVIT(RN)
2) CCC NOT USED IN PAGE. IF(R2.LE.4)GO TO 15
2) CCC R5=R4
2) CCC R4=RA+.001+RSPC
2) CCC R8=R4
1) MOVER.F4[NEW,LCS] and 2) PTMOVX.F4[NEW,LCS] 2-04-78 10:30 pages 2,2
2) CCC R9=R5+RD-.001
2) C FOR ITEMS ON OTHER LINES.
2) CCC CALL MOVIT(RN)
2) 15 RSPC=RSPC+RD
***************
**** File 1) MOVER.F4[NEW,LCS], Page 2 line 334
1) CALL MOVIT
1) C RVX SHOULD BE FARTHEST POINT TO RIGHT.
1) 1200 FORMAT(' MOVED TO STAFF ',F4.0/)
1) CALL HYDPOG(3)
1) 5 FORMAT(' TYPE NEW STAFF #, POS1, POS2, UP-DOWN # '$)
1) END
**** File 2) PTMOVX.F4[NEW,LCS], Page 2 line 316
2) CALL MOVIT(RN)
2) C RVX SHOULD BE FARTHEST POINT TO RIGHT.
2) END
2) SUBROUTINE TURN(J,K,L,X)
2) C FINDS RESTS BEFORE AND AFTER BAR LINES FOR PAGE TURNS
2) COMMON /PX/KPN(1) /Q/Q(1)
2) DATA RMETER/4.0/
2) DO 1 M=J,K,L
2) R=CODEN(KPN,M,Q,N)
2) IF(R.EQ.1)RETURN
2) IF(R.EQ.4)RETURN
2) IF(R.NE.18)GO TO 3
2) C FINDS LAST METER GIVEN (4/4 IS DEFAULT)
2) IF(Q(N+5).LT.98)GO TO 4
2) RMETER=4
2) GO TO 1
2) 4 RMETER=4.01/Q(N+6)*Q(N+5)
2) C 2ND PART OF COMPOSITE METERS ARE IGNORED.*******
2) GO TO 1
2) 3 IF(R.NE.2)GO TO 1
2) IF(Q(N).LT.6)GO TO 2
2) C LOOK FOR NUMBERED RESTS AND REPEAT BARS (P8=-4, -5)
2) IF(Q(N+8).LE.-4)RETURN
2) C NOW WE HAVE A NUMBERED REST. MULT. NUMB. BY RHYTH. VALUE OF METER.
2) X=X+Q(N+8)*RMETER
2) GO TO 1
2) 2 X=X+Q(N+7)
2) 1 CONTINUE
2) END
***************